![]()
M.Tech (Computer Technology)
IIT Delhi,IndiaSession:Jan-May 1999
List Of Experiments
Cycle 1
1). DOS2: To write a MS-DOS device driver in assembly language and to install it in CONFIG.SYS which will display the message
"Welcome to the EE752 Software Lab" only at boot-up time.2).DOS3: Write a keyboard handler (either as a device driver or as a terminate-and-stay-resident program) that monitors the keyboard. When the keys CONTROL+I combination is pressed simultaneously, the following message is displayed: "IIT Delhi" for a period of TWO seconds.
3).C1:Write an application in C under DOS/UNIX that takes its input from the user as below, converts it to the Polish notation and outputs the numeric result.
4).C2 : Using Lex, write an application which takes a paragraph of text as input and outputs the tokenized words as output symbols.
5). C3 : Develop a dictionary / spelling checker. The input will be a paragraph of text and the output will be the wrongly spelt words. The approximately 10000 word dictionary is already available under UNIX.
6).C4 : Write a small monitor programme which:
i). Reads data byte by byte from the serial port of a 8085 microprocessor kit and displays them on-screen
ii). Takes data strings (terminated by the CR/LF chars) and sends them to the 8085 kit at the appropriate
baud rate.
7).C5 : Write a C program with three loops - (a) one loop executing 1000 times and displaying 1000 separate lines on screen, (b) the second loop executing 1000 lines and displaying
only one line on screen and the (c) the third loop executing 100 times without any output but incrementing a zero-initialized variable 1000 times. Cross-compile this C program for
the following platforms: 80486, 80286, 8031, MIPS, SGI. Strip the program using "strip" command. Profile the program (man profile). Optimize for (a) speed (b) size. Rewrite the
program in C++. Use a graphical debugger (xxgdb) or a textual debugger to execute your program a step at a time.
8).DOS1: Write an assembly language program (in 80x86 language) which displays a real-time clock in the top-right corner of the screen on a DOS machine
CYCLE 2
1) NET1 : Write a client-server program duo running on two machines. The client should send a string of arbitrary length (small case). The server shoudl receive the string, convert it to upper case and send it back to the client - which then displays it on its own terminal.
Rewrite the same client-server program as above using RPCGEN.
2). NET2 : Write a UNIX shell programme to accomplish the following tasks:
- find out all files called core in every user's area (such files are often generated during program faults and are often left to the System Administrator to locate and remove ! )
- find out all files above the size of 100 blocks in everysubdirectory of /home and list their attributes
- find out how to delete a file called "<xyz", a file called " " (the file name is a combination of one or more blank spaces)
- change your UNIX system prompt from $ or % to the more glamorous [yourname : date] %
3). SYS1: Write a C program with three sub-routines. Compile it. Now move each of the three subroutines to a unique files. Compile the three files separately (using cc filename -c).
Now link the three compiled routines to the main program. Run the program. Now, package the program into a archive (see man ar) and include a makefile, a README file and
prepare it for distribution.
Use RPM (RedHat package Manager - see www.redhat.com) for creating a .rpm package for distribution ?
2). SYS3 : Using the Java Development Kit (JDK) available under Solaris (eesun01), write a Java program which adds two numbers.3). SYS4:Write the same addition of two number program in javascript.
Experiments Done by :